package com.premize.grco.presentation.businessDelegate;

import java.util.Date;
import java.util.List;

import com.premize.grco.movil.GrcoCliente;
import com.premize.grco.movil.GrcoPDescuento;
import com.premize.grco.movil.GrcoPLocalizacion;
import com.premize.grco.movil.GrcoPParametro;
import com.premize.grco.movil.GrcoPTipoParametro;
import com.premize.grco.movil.GrcoPUsuario;
import com.premize.grco.movil.GrcoPVendedor;
import com.premize.grco.movil.GrcoPedido;
import com.premize.grco.movil.GrcoPedidoProducto;
import com.premize.grco.movil.GrcoPedidoProductoId;
import com.premize.grco.movil.GrcoProducto;
import com.premize.grco.movil.control.GrcoClienteLogic;
import com.premize.grco.movil.control.GrcoPDescuentoLogic;
import com.premize.grco.movil.control.GrcoPLocalizacionLogic;
import com.premize.grco.movil.control.GrcoPParametroLogic;
import com.premize.grco.movil.control.GrcoPTipoParametroLogic;
import com.premize.grco.movil.control.GrcoPUsuarioLogic;
import com.premize.grco.movil.control.GrcoPVendedorLogic;
import com.premize.grco.movil.control.GrcoPedidoLogic;
import com.premize.grco.movil.control.GrcoPedidoProductoLogic;
import com.premize.grco.movil.control.GrcoProductoLogic;
import com.premize.grco.movil.control.IGrcoClienteLogic;
import com.premize.grco.movil.control.IGrcoPDescuentoLogic;
import com.premize.grco.movil.control.IGrcoPLocalizacionLogic;
import com.premize.grco.movil.control.IGrcoPParametroLogic;
import com.premize.grco.movil.control.IGrcoPTipoParametroLogic;
import com.premize.grco.movil.control.IGrcoPUsuarioLogic;
import com.premize.grco.movil.control.IGrcoPVendedorLogic;
import com.premize.grco.movil.control.IGrcoPedidoLogic;
import com.premize.grco.movil.control.IGrcoPedidoProductoLogic;
import com.premize.grco.movil.control.IGrcoProductoLogic;


/**
* Use a Business Delegate to reduce coupling between presentation-tier clients and business services.
* The Business Delegate hides the underlying implementation details of the business service, such as lookup and access details of the EJB architecture.
*
* The Business Delegate acts as a client-side business abstraction; it provides an abstraction for, and thus hides,
* the implementation of the business services. Using a Business Delegate reduces the coupling between presentation-tier clients and
* the system's business services. Depending on the implementation strategy, the Business Delegate may shield clients from possible
* volatility in the implementation of the business service API. Potentially, this reduces the number of changes that must be made to the
* presentation-tier client code when the business service API or its underlying implementation changes.
*
* However, interface methods in the Business Delegate may still require modification if the underlying business service API changes.
* Admittedly, though, it is more likely that changes will be made to the business service rather than to the Business Delegate.
*
* Often, developers are skeptical when a design goal such as abstracting the business layer causes additional upfront work in return
* for future gains. However, using this pattern or its strategies results in only a small amount of additional upfront work and provides
* considerable benefits. The main benefit is hiding the details of the underlying service. For example, the client can become transparent
* to naming and lookup services. The Business Delegate also handles the exceptions from the business services, such as java.rmi.Remote
* exceptions, Java Messages Service (JMS) exceptions and so on. The Business Delegate may intercept such service level exceptions and
* generate application level exceptions instead. Application level exceptions are easier to handle by the clients, and may be user friendly.
* The Business Delegate may also transparently perform any retry or recovery operations necessary in the event of a service failure without
* exposing the client to the problem until it is determined that the problem is not resolvable. These gains present a compelling reason to
* use the pattern.
*
* Another benefit is that the delegate may cache results and references to remote business services. Caching can significantly improve performance,
* because it limits unnecessary and potentially costly round trips over the network.
*
* A Business Delegate uses a component called the Lookup Service. The Lookup Service is responsible for hiding the underlying implementation
* details of the business service lookup code. The Lookup Service may be written as part of the Delegate, but we recommend that it be
* implemented as a separate component, as outlined in the Service Locator pattern (See "Service Locator" on page 368.)
*
* When the Business Delegate is used with a Session Facade, typically there is a one-to-one relationship between the two.
* This one-to-one relationship exists because logic that might have been encapsulated in a Business Delegate relating to its interaction
* with multiple business services (creating a one-to-many relationship) will often be factored back into a Session Facade.
*
* Finally, it should be noted that this pattern could be used to reduce coupling between other tiers, not simply the presentation and the
* business tiers.
*
* @author Zathura Code Generator http://code.google.com/p/zathura
*
*/
public class BusinessDelegatorView {
    private BusinessDelegatorView() {
    }

    public static List<GrcoCliente> getGrcoCliente() throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();

        return grcoClienteLogic.getGrcoCliente();
    }

    public static void saveGrcoCliente(String barrio, Long ciudad,
        String codigo, Long consCliente, Long departamento, String direccion,
        String email, String fechaCreacion, Date fechaModificacion,
        Long indicadorAutoretenedor, String localidad, Long modificadoMovil,
        String numeroIdentificacion, Long pais, String razonSocial,
        String telefono1, String telefono2, Long tipoIdentificacion,
        Long tipoPersoneria, String usuarioCreacion, String usuarioModificacion)
        throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();
        grcoClienteLogic.saveGrcoCliente(barrio, ciudad, codigo, consCliente,
            departamento, direccion, email, fechaCreacion, fechaModificacion,
            indicadorAutoretenedor, localidad, modificadoMovil,
            numeroIdentificacion, pais, razonSocial, telefono1, telefono2,
            tipoIdentificacion, tipoPersoneria, usuarioCreacion,
            usuarioModificacion);
    }

    public static void deleteGrcoCliente(Long consCliente)
        throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();
        grcoClienteLogic.deleteGrcoCliente(consCliente);
    }

    public static void updateGrcoCliente(String barrio, Long ciudad,
        String codigo, Long consCliente, Long departamento, String direccion,
        String email, String fechaCreacion, Date fechaModificacion,
        Long indicadorAutoretenedor, String localidad, Long modificadoMovil,
        String numeroIdentificacion, Long pais, String razonSocial,
        String telefono1, String telefono2, Long tipoIdentificacion,
        Long tipoPersoneria, String usuarioCreacion, String usuarioModificacion)
        throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();
        grcoClienteLogic.updateGrcoCliente(barrio, ciudad, codigo, consCliente,
            departamento, direccion, email, fechaCreacion, fechaModificacion,
            indicadorAutoretenedor, localidad, modificadoMovil,
            numeroIdentificacion, pais, razonSocial, telefono1, telefono2,
            tipoIdentificacion, tipoPersoneria, usuarioCreacion,
            usuarioModificacion);
    }

    public static GrcoCliente getGrcoCliente(Long consCliente)
        throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();
        GrcoCliente grcoCliente = null;

        try {
            grcoCliente = grcoClienteLogic.getGrcoCliente(consCliente);
        } catch (Exception e) {
            throw e;
        }

        return grcoCliente;
    }

    public static List<GrcoCliente> findByCriteriaInGrcoCliente(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();

        return grcoClienteLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoCliente> findPageGrcoCliente(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();

        return grcoClienteLogic.findPageGrcoCliente(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoCliente() throws Exception {
        IGrcoClienteLogic grcoClienteLogic = new GrcoClienteLogic();

        return grcoClienteLogic.findTotalNumberGrcoCliente();
    }

    public static List<GrcoPDescuento> getGrcoPDescuento()
        throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();

        return grcoPDescuentoLogic.getGrcoPDescuento();
    }

    public static void saveGrcoPDescuento(
        Long tipoDescuento, Double valor) throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();
        grcoPDescuentoLogic.saveGrcoPDescuento(tipoDescuento,
            valor);
    }

    public static void deleteGrcoPDescuento(Long consDescuento)
        throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();
        grcoPDescuentoLogic.deleteGrcoPDescuento(consDescuento);
    }

    public static void updateGrcoPDescuento(Long consDescuento,
        Long tipoDescuento, Double valor) throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();
        grcoPDescuentoLogic.updateGrcoPDescuento(consDescuento, tipoDescuento,
            valor);
    }

    public static GrcoPDescuento getGrcoPDescuento(Long consDescuento)
        throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();
        GrcoPDescuento grcoPDescuento = null;

        try {
            grcoPDescuento = grcoPDescuentoLogic.getGrcoPDescuento(consDescuento);
        } catch (Exception e) {
            throw e;
        }

        return grcoPDescuento;
    }

    public static List<GrcoPDescuento> findByCriteriaInGrcoPDescuento(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();

        return grcoPDescuentoLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoPDescuento> findPageGrcoPDescuento(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();

        return grcoPDescuentoLogic.findPageGrcoPDescuento(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPDescuento()
        throws Exception {
        IGrcoPDescuentoLogic grcoPDescuentoLogic = new GrcoPDescuentoLogic();

        return grcoPDescuentoLogic.findTotalNumberGrcoPDescuento();
    }

    public static List<GrcoPedido> getGrcoPedido() throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();

        return grcoPedidoLogic.getGrcoPedido();
    }

    public static void saveGrcoPedido(Long consPedido, Long estado,
        Date fechaPedido, Double totalPedido, Long consCliente_GrcoCliente,
        String codVendedor_GrcoPVendedor) throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();
        grcoPedidoLogic.saveGrcoPedido(consPedido, estado, fechaPedido,
            totalPedido, consCliente_GrcoCliente, codVendedor_GrcoPVendedor);
    }

    public static void deleteGrcoPedido(Long consPedido)
        throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();
        grcoPedidoLogic.deleteGrcoPedido(consPedido);
    }

    public static void updateGrcoPedido(Long consPedido, Long estado,
        Date fechaPedido, Double totalPedido, Long consCliente_GrcoCliente,
        String codVendedor_GrcoPVendedor) throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();
        grcoPedidoLogic.updateGrcoPedido(consPedido, estado, fechaPedido,
            totalPedido, consCliente_GrcoCliente, codVendedor_GrcoPVendedor);
    }

    public static GrcoPedido getGrcoPedido(Long consPedido)
        throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();
        GrcoPedido grcoPedido = null;

        try {
            grcoPedido = grcoPedidoLogic.getGrcoPedido(consPedido);
        } catch (Exception e) {
            throw e;
        }

        return grcoPedido;
    }

    public static List<GrcoPedido> findByCriteriaInGrcoPedido(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();

        return grcoPedidoLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoPedido> findPageGrcoPedido(String sortColumnName,
        boolean sortAscending, int startRow, int maxResults)
        throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();

        return grcoPedidoLogic.findPageGrcoPedido(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPedido() throws Exception {
        IGrcoPedidoLogic grcoPedidoLogic = new GrcoPedidoLogic();

        return grcoPedidoLogic.findTotalNumberGrcoPedido();
    }

    public static List<GrcoPedidoProducto> getGrcoPedidoProducto()
        throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();

        return grcoPedidoProductoLogic.getGrcoPedidoProducto();
    }

    public static void saveGrcoPedidoProducto(Long consPedido,
        String codigoProducto, Long cantidad, Double monto,
        Long consPedido_GrcoPedido, String codigoProducto_GrcoProducto)
        throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();
        grcoPedidoProductoLogic.saveGrcoPedidoProducto(consPedido,
            codigoProducto, cantidad, monto, consPedido_GrcoPedido,
            codigoProducto_GrcoProducto);
    }

    public static void deleteGrcoPedidoProducto(Long consPedido,
        String codigoProducto) throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();
        grcoPedidoProductoLogic.deleteGrcoPedidoProducto(consPedido,
            codigoProducto);
    }

    public static void updateGrcoPedidoProducto(Long consPedido,
        String codigoProducto, Long cantidad, Double monto,
        Long consPedido_GrcoPedido, String codigoProducto_GrcoProducto)
        throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();
        grcoPedidoProductoLogic.updateGrcoPedidoProducto(consPedido,
            codigoProducto, cantidad, monto, consPedido_GrcoPedido,
            codigoProducto_GrcoProducto);
    }

    public static GrcoPedidoProducto getGrcoPedidoProducto(
        GrcoPedidoProductoId id) throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();
        GrcoPedidoProducto grcoPedidoProducto = null;

        try {
            grcoPedidoProducto = grcoPedidoProductoLogic.getGrcoPedidoProducto(id);
        } catch (Exception e) {
            throw e;
        }

        return grcoPedidoProducto;
    }

    public static List<GrcoPedidoProducto> findByCriteriaInGrcoPedidoProducto(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();

        return grcoPedidoProductoLogic.findByCriteria(variables,
            variablesBetween, variablesBetweenDates);
    }

    public static List<GrcoPedidoProducto> findPageGrcoPedidoProducto(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();

        return grcoPedidoProductoLogic.findPageGrcoPedidoProducto(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPedidoProducto()
        throws Exception {
        IGrcoPedidoProductoLogic grcoPedidoProductoLogic = new GrcoPedidoProductoLogic();

        return grcoPedidoProductoLogic.findTotalNumberGrcoPedidoProducto();
    }

    public static List<GrcoPLocalizacion> getGrcoPLocalizacion()
        throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();

        return grcoPLocalizacionLogic.getGrcoPLocalizacion();
    }

    public static void saveGrcoPLocalizacion(Long consLocalizacion,
        String descripcion, String estado, Long nivel,
        Long consLocalizacion_GrcoPLocalizacion) throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();
        grcoPLocalizacionLogic.saveGrcoPLocalizacion(consLocalizacion,
            descripcion, estado, nivel, consLocalizacion_GrcoPLocalizacion);
    }

    public static void deleteGrcoPLocalizacion(Long consLocalizacion)
        throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();
        grcoPLocalizacionLogic.deleteGrcoPLocalizacion(consLocalizacion);
    }

    public static void updateGrcoPLocalizacion(Long consLocalizacion,
        String descripcion, String estado, Long nivel,
        Long consLocalizacion_GrcoPLocalizacion) throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();
        grcoPLocalizacionLogic.updateGrcoPLocalizacion(consLocalizacion,
            descripcion, estado, nivel, consLocalizacion_GrcoPLocalizacion);
    }

    public static GrcoPLocalizacion getGrcoPLocalizacion(Long consLocalizacion)
        throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();
        GrcoPLocalizacion grcoPLocalizacion = null;

        try {
            grcoPLocalizacion = grcoPLocalizacionLogic.getGrcoPLocalizacion(consLocalizacion);
        } catch (Exception e) {
            throw e;
        }

        return grcoPLocalizacion;
    }

    public static List<GrcoPLocalizacion> findByCriteriaInGrcoPLocalizacion(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();

        return grcoPLocalizacionLogic.findByCriteria(variables,
            variablesBetween, variablesBetweenDates);
    }

    public static List<GrcoPLocalizacion> findPageGrcoPLocalizacion(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();

        return grcoPLocalizacionLogic.findPageGrcoPLocalizacion(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPLocalizacion()
        throws Exception {
        IGrcoPLocalizacionLogic grcoPLocalizacionLogic = new GrcoPLocalizacionLogic();

        return grcoPLocalizacionLogic.findTotalNumberGrcoPLocalizacion();
    }

    public static List<GrcoPParametro> getGrcoPParametro()
        throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();

        return grcoPParametroLogic.getGrcoPParametro();
    }

    public static void saveGrcoPParametro(Long consParametro,
        String descripcion, String estado, String valor,
        Long consTipoParametro_GrcoPTipoParametro) throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();
        grcoPParametroLogic.saveGrcoPParametro(consParametro, descripcion,
            estado, valor, consTipoParametro_GrcoPTipoParametro);
    }

    public static void deleteGrcoPParametro(Long consParametro)
        throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();
        grcoPParametroLogic.deleteGrcoPParametro(consParametro);
    }

    public static void updateGrcoPParametro(Long consParametro,
        String descripcion, String estado, String valor,
        Long consTipoParametro_GrcoPTipoParametro) throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();
        grcoPParametroLogic.updateGrcoPParametro(consParametro, descripcion,
            estado, valor, consTipoParametro_GrcoPTipoParametro);
    }

    public static GrcoPParametro getGrcoPParametro(Long consParametro)
        throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();
        GrcoPParametro grcoPParametro = null;

        try {
            grcoPParametro = grcoPParametroLogic.getGrcoPParametro(consParametro);
        } catch (Exception e) {
            throw e;
        }

        return grcoPParametro;
    }

    public static List<GrcoPParametro> findByCriteriaInGrcoPParametro(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();

        return grcoPParametroLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoPParametro> findPageGrcoPParametro(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();

        return grcoPParametroLogic.findPageGrcoPParametro(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPParametro()
        throws Exception {
        IGrcoPParametroLogic grcoPParametroLogic = new GrcoPParametroLogic();

        return grcoPParametroLogic.findTotalNumberGrcoPParametro();
    }

    public static List<GrcoProducto> getGrcoProducto()
        throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();

        return grcoProductoLogic.getGrcoProducto();
    }

    public static void saveGrcoProducto(Long cantidadDisponible,
        Long cantidadMinima, String codigoProducto, Long estado, String nombre,
        String promocion, Double valor, Long consDescuento_GrcoPDescuento)
        throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();
        grcoProductoLogic.saveGrcoProducto(cantidadDisponible, cantidadMinima,
            codigoProducto, estado, nombre, promocion, valor,
            consDescuento_GrcoPDescuento);
    }

    public static void deleteGrcoProducto(String codigoProducto)
        throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();
        grcoProductoLogic.deleteGrcoProducto(codigoProducto);
    }

    public static void updateGrcoProducto(Long cantidadDisponible,
        Long cantidadMinima, String codigoProducto, Long estado, String nombre,
        String promocion, Double valor, Long consDescuento_GrcoPDescuento)
        throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();
        grcoProductoLogic.updateGrcoProducto(cantidadDisponible,
            cantidadMinima, codigoProducto, estado, nombre, promocion, valor,
            consDescuento_GrcoPDescuento);
    }

    public static GrcoProducto getGrcoProducto(String codigoProducto)
        throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();
        GrcoProducto grcoProducto = null;

        try {
            grcoProducto = grcoProductoLogic.getGrcoProducto(codigoProducto);
        } catch (Exception e) {
            throw e;
        }

        return grcoProducto;
    }

    public static List<GrcoProducto> findByCriteriaInGrcoProducto(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();

        return grcoProductoLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoProducto> findPageGrcoProducto(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();

        return grcoProductoLogic.findPageGrcoProducto(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoProducto() throws Exception {
        IGrcoProductoLogic grcoProductoLogic = new GrcoProductoLogic();

        return grcoProductoLogic.findTotalNumberGrcoProducto();
    }

    public static List<GrcoPTipoParametro> getGrcoPTipoParametro()
        throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();

        return grcoPTipoParametroLogic.getGrcoPTipoParametro();
    }

    public static void saveGrcoPTipoParametro(Long consTipoParametro,
        String descripcion, String estado) throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();
        grcoPTipoParametroLogic.saveGrcoPTipoParametro(consTipoParametro,
            descripcion, estado);
    }

    public static void deleteGrcoPTipoParametro(Long consTipoParametro)
        throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();
        grcoPTipoParametroLogic.deleteGrcoPTipoParametro(consTipoParametro);
    }

    public static void updateGrcoPTipoParametro(Long consTipoParametro,
        String descripcion, String estado) throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();
        grcoPTipoParametroLogic.updateGrcoPTipoParametro(consTipoParametro,
            descripcion, estado);
    }

    public static GrcoPTipoParametro getGrcoPTipoParametro(
        Long consTipoParametro) throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();
        GrcoPTipoParametro grcoPTipoParametro = null;

        try {
            grcoPTipoParametro = grcoPTipoParametroLogic.getGrcoPTipoParametro(consTipoParametro);
        } catch (Exception e) {
            throw e;
        }

        return grcoPTipoParametro;
    }

    public static List<GrcoPTipoParametro> findByCriteriaInGrcoPTipoParametro(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();

        return grcoPTipoParametroLogic.findByCriteria(variables,
            variablesBetween, variablesBetweenDates);
    }

    public static List<GrcoPTipoParametro> findPageGrcoPTipoParametro(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();

        return grcoPTipoParametroLogic.findPageGrcoPTipoParametro(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPTipoParametro()
        throws Exception {
        IGrcoPTipoParametroLogic grcoPTipoParametroLogic = new GrcoPTipoParametroLogic();

        return grcoPTipoParametroLogic.findTotalNumberGrcoPTipoParametro();
    }

    public static List<GrcoPUsuario> getGrcoPUsuario()
        throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();

        return grcoPUsuarioLogic.getGrcoPUsuario();
    }

    public static void saveGrcoPUsuario(Long consUsuario, Date fechaCreacion,
        Date fechaModifica, String password, Long rol, String usuario,
        String usuarioCreacion, String usuarioModifica)
        throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();
        grcoPUsuarioLogic.saveGrcoPUsuario(consUsuario, fechaCreacion,
            fechaModifica, password, rol, usuario, usuarioCreacion,
            usuarioModifica);
    }

    public static void deleteGrcoPUsuario(Long consUsuario)
        throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();
        grcoPUsuarioLogic.deleteGrcoPUsuario(consUsuario);
    }

    public static void updateGrcoPUsuario(Long consUsuario, Date fechaCreacion,
        Date fechaModifica, String password, Long rol, String usuario,
        String usuarioCreacion, String usuarioModifica)
        throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();
        grcoPUsuarioLogic.updateGrcoPUsuario(consUsuario, fechaCreacion,
            fechaModifica, password, rol, usuario, usuarioCreacion,
            usuarioModifica);
    }

    public static GrcoPUsuario getGrcoPUsuario(Long consUsuario)
        throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();
        GrcoPUsuario grcoPUsuario = null;

        try {
            grcoPUsuario = grcoPUsuarioLogic.getGrcoPUsuario(consUsuario);
        } catch (Exception e) {
            throw e;
        }

        return grcoPUsuario;
    }

    public static List<GrcoPUsuario> findByCriteriaInGrcoPUsuario(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();

        return grcoPUsuarioLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoPUsuario> findPageGrcoPUsuario(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();

        return grcoPUsuarioLogic.findPageGrcoPUsuario(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPUsuario() throws Exception {
        IGrcoPUsuarioLogic grcoPUsuarioLogic = new GrcoPUsuarioLogic();

        return grcoPUsuarioLogic.findTotalNumberGrcoPUsuario();
    }

    public static List<GrcoPVendedor> getGrcoPVendedor()
        throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();

        return grcoPVendedorLogic.getGrcoPVendedor();
    }

    public static void saveGrcoPVendedor(String codVendedor, Long estado,
        String nombreVendedor, String numeroIdentificacion)
        throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();
        grcoPVendedorLogic.saveGrcoPVendedor(codVendedor, estado,
            nombreVendedor, numeroIdentificacion);
    }

    public static void deleteGrcoPVendedor(String codVendedor)
        throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();
        grcoPVendedorLogic.deleteGrcoPVendedor(codVendedor);
    }

    public static void updateGrcoPVendedor(String codVendedor, Long estado,
        String nombreVendedor, String numeroIdentificacion)
        throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();
        grcoPVendedorLogic.updateGrcoPVendedor(codVendedor, estado,
            nombreVendedor, numeroIdentificacion);
    }

    public static GrcoPVendedor getGrcoPVendedor(String codVendedor)
        throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();
        GrcoPVendedor grcoPVendedor = null;

        try {
            grcoPVendedor = grcoPVendedorLogic.getGrcoPVendedor(codVendedor);
        } catch (Exception e) {
            throw e;
        }

        return grcoPVendedor;
    }

    public static List<GrcoPVendedor> findByCriteriaInGrcoPVendedor(
        Object[] variables, Object[] variablesBetween,
        Object[] variablesBetweenDates) throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();

        return grcoPVendedorLogic.findByCriteria(variables, variablesBetween,
            variablesBetweenDates);
    }

    public static List<GrcoPVendedor> findPageGrcoPVendedor(
        String sortColumnName, boolean sortAscending, int startRow,
        int maxResults) throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();

        return grcoPVendedorLogic.findPageGrcoPVendedor(sortColumnName,
            sortAscending, startRow, maxResults);
    }

    public static Long findTotalNumberGrcoPVendedor() throws Exception {
        IGrcoPVendedorLogic grcoPVendedorLogic = new GrcoPVendedorLogic();

        return grcoPVendedorLogic.findTotalNumberGrcoPVendedor();
    }
}
